SPar: A DSL for High-Level and Productive Stream Parallelism
نویسندگان
چکیده
This paper introduces SPar, an internal C++ Domain-Specific Language (DSL) that supports the development of classic stream parallel applications. The DSL uses standard C++ attributes to introduce annotations tagging the notable components of stream parallel applications: stream sources and stream processing stages. A set of tools process SPar code (C++ annotated code using the SPar attributes) to generate FastFlow C++ code that exploits the stream parallelism denoted by SPar annotations while targeting shared memory multi-core architectures. We outline the main SPar features along with the main implementation techniques and tools. Also, we show the results of experiments assessing the feasibility of the entire approach as well as SPar’s performance and expressiveness.
منابع مشابه
Domain-specific language & support tools for high-level stream parallelism
Stream-based systems are representative of several different application domains including video, networking, audio, graphic processing, etc. Stream parallel programs may run on different kinds of parallel architectures (desktop, servers, cell phones, and supercomputers) and represent significant workloads on our current computing systems. Nevertheless, most of them are still not parallelized. ...
متن کاملDSL-based Design Space Exploration for Temporal and Spatial Parallelism of Custom Stream Computing
Stream computation is one of the approaches suitable for FPGA-based custom computing due to its high throughput capability brought by pipelining with regular memory access. To increase performance of iterative stream computation, we can exploit both temporal and spatial parallelism by deepening and duplicating pipelines, respectively. However, the performance is constrained by several factors i...
متن کاملTask Parallelism in Spar
In this paper we will give a small introduction to Spar, a programming language for semi-automatic parallel programming. Spar, a Java derivative is being developed as part of the Automap project, which aims to create completely automatic mappings for code and data at either compile time or runtime. We will present how Spar supports task-parallel programming and how it interacts with the user or...
متن کاملExtending the Classical AI Planning Paradigm to Robotic Assembly Planning
This paper describes SPAR, a task planner that has been implemented on a PUMA 762. SPAR is capable of formulating manipulation plans to meet specified assembly goals; these manipulation plans include grasping and regrasping operations if they are deemed necessary for successful completion of assembly. SPAR goes beyond the classical AI planners, in the sense that SPAR is capable of solving geome...
متن کاملIdentification and assessment of Human Error in Cabin Roofed Crane Using SHERPA and SPAR-H Techniques
Introduction: Human errors play a significant role in the occurrence of industrial accidents. This study aims to investigate the human errors in cabin roof crane operators of a metal industry using SHERPA and SPAR-H techniques. Material and Method: In this research, first, all of the tasks of the tower crane operator were identified and analyzed. Then, adopting SHERPA technique, p...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Parallel Processing Letters
دوره 27 شماره
صفحات -
تاریخ انتشار 2017